System, method, and computer software product for linked window interfaces

ABSTRACT

Systems, methods, and computer program products are described for providing a graphical user interface (GUI) that may include a first openable window of image features constituting, for example, a pseudo-image of a scanned probe array. The image features each have one or more characteristics representing one or more hybridization reactions associated with a probe of the probe array. The GUI also has a second openable window including data features, each relating to one or more quantifications of one or more hybridization reactions associated with a probe of the probe array. This second window may be, for example, a scatter plot of hybridization intensities of probes to two or more labeled samples. The GUI further includes a third openable window including descriptive features such as rows of a spreadsheet. Each row may include descriptive elements associated with a probe. When a user selects a feature from any of the two or more windows, a corresponding feature in at least one other of the two or more windows is highlighted.

RELATED APPLICATIONS

[0001] The present application relates to and claims priority from U.S.Provisional Patent Application Ser. No. 60/226,999, titled “System,Method, and Product for Linked Window Interface,” filed Aug. 22, 2000;U.S. Provisional Patent Application Serial No. 60/286,578, titled“System, Method, and Product for Scanning of Biological Materials,”filed Apr. 26, 2001; and PCT Application PCT/US01/26390 filed on, Aug.22, 2001, all of which are hereby incorporated herein by reference intheir entireties for all purposes.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] The present invention relates to computer systems, methods, andproducts for analyzing and displaying scanned images of high-densityarrays of biological materials.

[0004] 2. Related Art

[0005] Synthesized probe arrays, such as Affymetrix® GeneChip® arrays,have been used to generate unprecedented amounts of information aboutbiological systems. For example, a commercially available GeneChip®array set from Affymetrix, Inc. of Santa Clara, Calif., is capable ofmonitoring the expression levels of approximately 6,500 murine genes andexpressed sequence tags (EST's). Experimenters can quickly designfollow-on experiments with respect to genes, EST's, or other biologicalmaterials of interest by, for example, producing in their ownlaboratories microscope slides containing dense arrays of probes usingthe Affymetrix® 417™ Arrayer or other spotting devices.

[0006] Analysis of data from experiments with synthesized and/or spottedprobe arrays may lead to the development of new drugs and new diagnostictools. In some conventional applications, this analysis begins with thecapture of fluorescent signals indicating hybridization of labeledtarget samples with probes on synthesized or spotted probe arrays. Thedevices used to capture these signals often are referred to as scanners,an example of which is the Affymetrix® 428™ Scanner from Affymetrix.

[0007] There is a great demand in the art for methods for organizing,accessing, analyzing, and displaying the vast amount of informationcollected by scanning microarrays. Computer-based systems and methodshave been developed to assist a user to obtain and visualize the vastamounts of information generated by the scanners. These commercial andacademic software applications typically provide such information asintensities of hybridization reactions or comparisons of hybridizationreactions. This information may be displayed to a user in graphicalform.

SUMMARY OF THE INVENTION

[0008] The present invention includes a system, a method, and a computerprogram product for controlling an optical scanner. Systems, methods,and computer program products are described with respect to someembodiments for providing a graphical user interface (GUI). The GUI mayinclude a first openable window of image features constituting, forexample, a pseudo-image of a scanned probe array. The term“pseudo-image” is used in this context to mean that the image featuresprovide a graphical representation of the probes of a probe array thattypically are based on emissions from probe-target pairs, lack ofemissions from probes that have not hybridized with targets, andinformation about the location of the probes on the probe array. Theword “openable” is used in this context to mean that the window may beopened, e.g. by a user, so as to be displayed in the GUI, but may alsobe closed or otherwise not displayed. The image features have one ormore characteristics representing one or more hybridization reactionsassociated with a probe of the probe array.

[0009] The GUI of these embodiments also has a second openable windowincluding data features, each relating to one or more quantifications ofone or more hybridization reactions associated with a probe of the probearray. This second window may be, for example, a scatter plot ofhybridization intensities of probes to two or more labeled samples. TheGUI further includes a third openable window including descriptivefeatures such as rows of a spreadsheet. Each row may include descriptiveelements associated with a probe. In some implementations, when a userselects a feature from any of the two or more windows, a correspondingfeature in at least one other of the two or more windows is highlighted.For example, a user may select an image feature in the first window(e.g., a spot representing a probe of a spotted array), thereby causinga spot in the scatter plot and a row in the spreadsheet to behighlighted. The spot in the scatter plot and the spreadsheet rowprovide information about the probe corresponding to the image featureselected by the user in the first window.

[0010] The probes may be those of a spotted probe array such as may begenerated, for example, by an Affymetrix™ 417™ or 427™ Arrayer. Asanother non-limiting example, the probes may be those synthesized on asynthesized array such as an Affymetrix® GeneChip® array.

[0011] With respect to the first window, the graphically representedprobes have one or more characteristics indicative of the efficiency orintensity of hybridization associated with the corresponding probe. Forexample, the intensity or another visual characteristic of the imagefeatures graphically representing probes may be varied to indicate theefficiency or intensity of hybridization. With respect to the example ofthe second window constituting a scatter plot, the plot may show alongone axis the intensity of emissions from a first label such as a dyethat fluoresces in response a first excitation source. The scatter plotmay show along another axis the intensity of emissions from a second dyethat fluoresces in response the same or another excitation source. Thescatter plot need not be limited to two dimensions, as when, forexample, a third dye is associated with probe-target pairs hybridized onthe probe array. Any form of labeling may be used, and many types ofgraphs may be employed that provide, for example, visual comparisonsbetween two or more sets of hybridization data.

[0012] A third of the two or more windows may include a table,spreadsheet, or other textual or graphical representation of informationrelated to probes in the probe array. In some implementations, forexample, a third window may include a spreadsheet having rows (or, inother aspects, columns, or combinations thereof) containing any of avariety of data. For example, the data may relate to the experiment thatproduced the hybridization intensities represented by a pseudo-image inthe first window, e.g., the type of dye or dyes used in the experiment.The data may also include links to sources, such as on the Internet oranother database source, containing information about the probes and/orthe targets that hybridized with the probes. As yet another non-limitingexample, the data may include statistical information about the absoluteor relative intensities of the probes. As a further non-limitingexample, the data may include notes, labels, or other informationprovided by the user.

[0013] In some implementations, two or more of the windows aresimultaneously displayed to the user on a display device. The user mayselect a graphical element of one of the simultaneously displayedwindows and a corresponding graphical element on another of the two ormore windows is highlighted. The highlighting may be done in accordancewith any of a variety of known techniques, such as by changing the fontand/or color of foreground or background, or by providing specialeffects such as blinking.

[0014] A fourth window may also be opened in some implementations. Thisfourth window may, like the first window, include image features havingone or more characteristics representing one or more hybridizationreactions associated with a probe of the probe array. For example, theimage features of the first window may have characteristics (such ascolor or gray-scale intensity) representing the degree, efficiency, orintensity of hybridization of a first sample labeled with a firstfluorescent dye to the probes of a spotted array. The image features ofthe second window may have characteristics representing the degree,efficiency, or intensity of hybridization of a second sample labeledwith a second fluorescent dye to the probes of the same spotted array.As another example, the image features of the first window may representthe degree, efficiency, or intensity of hybridization of a first samplelabeled with a first fluorescent dye to the probes of a firstsynthesized array, and the mage features of the second window mayrepresent the degree, efficiency, or intensity of hybridization of asecond sample labeled with a the same or another fluorescent dye to theprobes of a second synthesized array having probes essentially the sameas the probes of the first synthesized array.

[0015] The characteristics of the image features of the first and/orfourth window may include a chromatic value representing degree,efficiency, or intensity of hybridization. For example, the chromaticvalue may be a hue (color), brightness, lightness, or saturation value.The characteristic may also, or in addition, be an intensity value. Theintensity value may be, for example, a gray-scale value.

[0016] The second openable window may, in some embodiments, include ahistogram wherein the plurality of data features comprises bars, eachrepresenting a quantification of a number of probes having in common arange of degree, efficiency, or intensity of hybridization with one ormore targets. The second openable window may also be any other kind ofrepresentation of statistical information about absolute or relativehybridization of probes such as may be conveyed, for example, by ascatter plot (as noted), a bar graph, or a line graph.

[0017] With respect to the third openable window, the descriptivefeatures may, as one example, constitute rows of a spreadsheet. Each rowmay include one or more descriptive elements associated with a probe.Non-limiting examples of descriptive elements include any one orcombination of two or more of the following: absolute image intensityvalue, relative image intensity value, user-supplied data related to theprobe, biological information related to the probe; probe identifier,probe x-coordinate identifier, probe y-coordinate identifier,probe-related data, probe data links, pin identifier, and/or well plateidentifier. The probe data links may include links to remotely orlocally stored user-supplied data related to the probe, and/or links toremotely or locally stored biological information related to the probe.The probe-related data may include chromosome location of a gene or ESTrepresented by the probe, band location on the chromosome, and/or SNP orother marker identifying the location on the chromosome.

[0018] In accordance with other embodiments, a user interface isdescribed that includes any combination of two or more of the followingwindows: a first window having a plurality of image features, eachhaving one or more characteristics representing one or morehybridization reactions associated with a probe of a probe array; asecond window having a plurality of data features, each relating to oneor more quantifications of one or more hybridization reactionsassociated with a probe of the probe array; and a third window having aplurality of descriptive features, each including one or moredescriptive elements associated with a probe of the probe array. Inthese embodiments, when a user selects a feature from any of the two ormore windows, a corresponding feature in at least one other of the twoor more windows is highlighted.

[0019] In accordance with yet other embodiments, a computer programproduct is described. This product includes an image processor thatprocesses image data based on scanning a probe array, and a GUI managerconstructed and arranged to provide two or more windows. The windows maybe any combination of the following: (i) a first window having aplurality of image features based on the processed image data, eachhaving one or more characteristics representing one or morehybridization reactions associated with a probe of the probe array, (ii)a second window having a plurality of data features, each relating toone or more quantifications of one or more hybridization reactionsassociated with a probe of the probe array, and/or (iii) a third windowhaving a plurality of descriptive features, each including one or moredescriptive elements associated with a probe of the probe array. When auser selects a feature from any of the two or more windows, the GUImanager may, in some implementations, cause a corresponding feature inat least one other of the two or more windows to be highlighted.

[0020] Also described is a computer program product having a GUI managerthat provides two or more windows. These windows may be any combinationof (i) a first window having a plurality of image features, each havingone or more characteristics representing one or more hybridizationreactions associated with a probe of the probe array, (ii) a secondwindow having a plurality of data features, each relating to one or morequantifications of one or more hybridization reactions associated with aprobe of the probe array, and (iii) a third window having a plurality ofdescriptive features, each including one or more descriptive elementsassociated with a probe of the probe array.

[0021] In accordance with yet other embodiments, a method is describedthat includes providing image data based on scanning a probe array andproviding, in a graphical user interface, two or more windows. Thesewindows are selected from the group consisting of (i) a first windowhaving a plurality of image features based on the image data, eachhaving one or more characteristics representing one or morehybridization reactions associated with a probe of a probe array, (ii) asecond window having a plurality of data features, each relating to oneor more quantifications of one or more hybridization reactionsassociated with a probe of the probe array, and (iii) a third windowhaving a plurality of descriptive features, each including one or moredescriptive elements associated with a probe of the probe array.

[0022] Also included in the following description is a scanning systemthat includes a scanner that scans a probe array to generate image data,an image processor that processes the image data, and a GUI manager thatprovides two or more windows. These windows may be any combination ofthe following: (i) a first window having a plurality of image featuresbased on the processed image data, each having one or morecharacteristics representing one or more hybridization reactionsassociated with a probe of the probe array, (ii) a second window havinga plurality of data features, each relating to one or morequantifications of one or more hybridization reactions associated with aprobe of the probe array, and (iii) a third window having a plurality ofdescriptive features, each including one or more descriptive elementsassociated with a probe of the probe array.

[0023] Yet another described embodiment is a scanning system. Thissystem includes a scanner that scans a probe array to generate imagedata, a computer, and a computer program product. When executed on thecomputer, the computer program product performs a method comprising thesteps of processing the image data and providing, in a graphical userinterface, two or more windows. These windows may be any combination ofthe following: (i) a first window having a plurality of image featuresbased on the processed image data, each having one or morecharacteristics representing one or more hybridization reactionsassociated with a probe of a probe array, (ii) a second window having aplurality of data features, each relating to one or more quantificationsof one or more hybridization reactions associated with a probe of theprobe array, and(iii) a third window having a plurality of descriptivefeatures, each including one or more descriptive elements associatedwith a probe of the probe array.

[0024] Generally, one advantage provided by the preceding and otherembodiments is that data regarding probe-target hybridization, and theprobes associated with the hybridization reactions, may besimultaneously displayed to a user in a variety of forms. These formsmay include, for example, two or more of a pseudo-image of probe-targethybridization (and probes that did not hybridize with targets); astatistical representation of absolute or relative hybridization (suchas in a scatter plot); and/or a table of processed, derived, calculated,retrieved, and/or user-supplied information related to the probes. Byselecting a feature corresponding to a probe or probes in one of thesewindows, other information related to the same probe or probes may behighlighted in the same or other window or windows for the benefit ofthe user.

[0025] According to yet another embodiment, a computer system forproviding a user interface with a scanner for scanning a probe array togenerate image data includes two or more window means. These windowmeans may include a first window means for providing image feature meanshaving one or more characteristics representing one or morehybridization reactions associated with probe means of a probe array;and a second window means for providing a data feature means related toone or more quantification means of said one or more hybridizationreactions associated with probe means of the probe array. These windowmeans may also include a third window means for providing descriptivefeature means including one or more descriptive elements associated withprobe means of the probe array.

[0026] According to yet another embodiment, a computer system forproviding a user interface with a scanner for scanning a probe array isprogrammed to display image features having one or more characteristicsrepresenting one or more hybridization reactions associated with a probeof the probe array, data features related to one or more quantificationsof one or more hybridization reactions associated with a probe of theprobe array, and descriptive features including one or more descriptiveelements associated with a probe of the probe array.

[0027] According to yet another embodiment, a computer program productincludes a GUI manager. The GUI manager is constructed and arranged toprovide display regions for displaying image features representinghybridization associated with a probe of a probe array, data featuresrelated to quantifying the hybridization associated with a probe of theprobe array, and descriptive features associated with a probe of theprobe array.

[0028] According to yet another embodiment, a computer program includesa GUI manager for providing window means for displaying image featuremeans representing hybridization means associated with a probe means ofa probe array, for displaying data feature means related to quantifyinghybridization means associated with probe means of the probe array, andfor displaying descriptive feature means associated with probe means ofthe probe array.

[0029] The above embodiments, implementations, and aspects are notnecessarily inclusive or exclusive of each other and may be combined inany manner that is nonconflicting and otherwise possible, whether theybe presented in association with a same, or a different, aspect of theinvention. The description of one embodiment, implementation, or aspectis not intended to be limiting with respect to other embodiments orimplementations. Also, any one or more function, step, operation, ortechnique described elsewhere in this specification may, in alternativeembodiments or implementations, be combined with any one or morefunction, step, operation, or technique described in the summary. Thus,the above embodiments, implementations, and aspects are illustrativerather than limiting.

BRIEF DESCRIPTION OF THE DRAWINGS

[0030]FIG. 1 is a simplified schematic diagram of one embodiment ofnetworked systems for generating, sharing, and processing probe arraydata among computers on a network, including an arrayer system forgenerating spotted probe arrays and scanner systems for scanning spottedand synthesized probe arrays.

[0031]FIG. 2 is a functional block diagram of one embodiment of a usercomputer of the networked computers of FIG. 1 suitable for controllingthe arrayer of FIG. 1 to produce spotted arrays.

[0032]FIG. 3A is a graphical representation of data records in oneembodiment of a data file suitable for storing data regarding spottedarrays produced in cooperation with the user computer of FIG. 2 and thearrayer of FIG. 1.

[0033]FIG. 3B is a graphical representation of a microscope slideincluding illustrative embodiments of spotted arrays produced incooperation with the user computer of FIG. 2 and the arrayer of FIG. 1.

[0034]FIG. 4 is a simplified graphical representation of selectedcomponents of one embodiment of a scanner of FIG. 1 suitable forscanning arrays.

[0035]FIG. 5A is a perspective view of a simplified exemplaryconfiguration of a scanning arm portion of the scanner of FIG. 4.

[0036]FIG. 5B is a top planar view of the scanning arm of FIG. 5A as itscans biological features on one embodiment of a spotted array beingmoved by a translation stage under the arm's arcuate path.

[0037]FIG. 6A is a graphical representation of one embodiment of a probefeature showing bidirectional scanning lines such as may be implementedusing the scanning arm of FIGS. 5A and 5B.

[0038]FIG. 6B is an illustrative plot of pixel clock pulses aligned withthe scanned probe feature of FIG. 6A to show illustrative radialposition sampling points.

[0039]FIG. 6C is an illustrative plot of sampled analog emissionvoltages aligned with the pixel clock pulses of FIG. 6B.

[0040]FIG. 7 is a functional block diagram of one embodiment of ascanner system of FIG. 1.

[0041]FIG. 8 is functional block diagram of one embodiment of a scannercontrol and analysis application (i.e., computer program product).

[0042]FIG. 9 is an illustrative implementation of a graphical userinterface employed in cooperation with the application of FIG. 8.

[0043] The described features will be more clearly appreciated from thefollowing detailed description when taken in conjunction with theaccompanying drawings. In the drawings, like reference numerals indicatelike structures or method steps and the leftmost digit of a referencenumeral indicates the number of the figure in which the referencedelement first. In functional block diagrams, rectangles generallyindicate functional elements, parallelograms generally indicate data,and rectangles with a pair of double borders generally indicatepredefined functional elements. In method flow charts, rectanglesgenerally indicate method steps and diamond shapes generally indicatedecision elements. All of these conventions, however, are intended to betypical or illustrative, rather than limiting.

DETAILED DESCRIPTION

[0044] Systems, methods, and software products to display data fromexperiments with synthesized and/or spotted arrays are described hereinwith respect to illustrative, non-limiting, implementations. Variousother alternatives, modifications and equivalents are possible. Forexample, while certain systems, methods, and computer software productsare described using exemplary embodiments with reference to spottedarrays analyzed and displayed using Affymetrix® scanners and/orAffymetrix software, the systems, methods, and products of the presentinvention are not so limited. For example, they generally may be appliedwith respect to many other probe arrays, including many types ofparallel biological assays.

Probe Arrays

[0045] For example, certain systems, methods, and computer softwareproducts are described herein using exemplary implementations foracquiring, analyzing, and/or displaying data from arrays of biologicalmaterials produced by the Affymetrix® 417™ or 427™ Arrayers availablefrom Affymetrix, Inc. Other illustrative implementations may be referredto in relation to data from experiments with Affymetrix® GeneChip®arrays. However, these systems, methods, and products may be appliedwith respect to many other types of probe arrays and, more generally,with respect to numerous parallel biological assays produced inaccordance with other conventional technologies and/or produced inaccordance with techniques that may be developed in the future. Forexample, aspects of the systems, methods, and products described hereinmay, in some implementations, be applied to parallel assays of nucleicacids, PCR products generated from cDNA clones, proteins, antibodies, ormany other biological materials. These materials may be disposed onslides (as typically used for spotted arrays), on substrates employedfor GeneChip® arrays, or on beads, optical fibers, or other substrates,supports, or media (all or any of which may hereafter generally andcollectively be referred to as “substrates”). Some implementations ofsynthesized arrays, their preparation, substrates, and the like aredescribed in U.S. Pat. Nos. 5,744,305 and 5,445,934, which are herebyincorporated herein by reference in their entireties for all purposes.Moreover, with respect to some implementations in which the context soindicates or allows, the probes need not be immobilized in or on asubstrate, and, if immobilized, need not be disposed in regular patternsor arrays. For convenience, the term “probe array” will generally beused broadly hereafter to refer to all of these types of arrays andparallel biological assays.

[0046] For convenience, an array made by depositing or positioningpre-synthesized or pre-selected probes on a substrate, or bydepositing/positioning techniques that may be developed in the future,is hereafter referred to as a “spotted array.” Typically, but notnecessarily, spotted arrays are commercially fabricated on microscopeslides. These arrays often consist of liquid spots containing biologicalmaterial of potentially varying compositions and concentrations. Forinstance, a spot in the array may include a few strands of shortpolymers, such as oligonucleotides in a water solution, or it mayinclude a high concentration of long strands of polymers, such ascomplex proteins. The Affymetrix® 417™ and 427™ Arrayers, noted above,are devices that deposit densely packed arrays of biological material ona microscope slide in accordance with these techniques. Aspects ofthese, and other, spot arrayers are described in U.S. Pat. Nos.6,121,048, 6,040,193 and 6,136,269, in PCT applications Nos.PCT/US99/00730 (International Publication Number WO99/36760) and PCT/US01/04285, in U.S. patent applications Ser. Nos. 09/122,216, 09/501,099,and 09/862,177, and in U.S. Provisional Patent Application Serial No.60/288,403, all of which are hereby incorporated by reference in theirentireties for all purposes. Other techniques for depositing orpositioning biological probes on a substrate, i.e., creating spottedarrays, also exist. For example, U.S. Pat. No. 6,040,193 to Winkler, etal. is directed to processes for dispensing drops of biologicalmaterial. The '193 patent, and U.S. Pat. No. 5,885,837 to Winkler, alsodescribe separating reactive regions of a substrate from each other byinert regions and spotting on the reactive regions. The '193 and '837patents are hereby incorporated by reference in their entireties. Othertechniques for producing spotted arrays are based on ejecting jets ofbiological material. Some implementations of the jetting technique usedevices such as syringes or piezo electric pumps to propel thebiological material.

[0047] Spotted arrays typically are used in conjunction with taggedbiological samples such as cells, proteins, genes or EST's, other DNAsequences, or other biological elements. These samples, referred toherein as “targets,” typically are processed so that they are spatiallyassociated with certain probes in the probe array. In one non-limitingimplementation, for example, one or more chemically tagged biologicalsamples, i.e., the targets, are distributed over the probe array. Sometargets hybridize with at least partially complementary probes andremain at the probe locations, while non-hybridized targets are washedaway. These hybridized targets, with their “tags” or “labels,” are thusspatially associated with the targets' complementary probes. Theassociated probe and target may sometimes be referred to as a“probe-target pair.” Detection of these pairs can serve a variety ofpurposes, such as to determine whether a target nucleic acid has anucleotide sequence identical to or different from a specific referencesequence. See, for example, U.S. Pat. No. 5,837,832 to Chee, et al.Other uses include gene expression monitoring and evaluation (see, e.g.,U.S. Pat. No. 5,800,992 to Fodor, et al.; U.S. Pat. No. 6,040,138 toLockhart, et al.; and International App. No. PCT/US98/15151, publishedas WO99/05323, to Balaban, et al.), genotyping (U.S. Pat. No. 5,856,092to Dale, et al.), or other detection of nucleic acids. The '832′, '992′,'138, and '092 patents, and publication WO99/05323, are incorporated byreference herein in their entirety for all purposes.

[0048] To ensure proper interpretation of the term “probe” as usedherein, it is noted that contradictory conventions exist in the relevantliterature. The word “probe” is used in some contexts in the literatureto refer not to the biological material that is deposited on asubstrate, as described above, but to what has been referred to hereinas the “target.” To avoid confusion, the term “probe” is used herein torefer to compounds such as those deposited on a substrate to createspotted arrays, or oligonucleotides on synthesized arrays, asnon-limiting examples.

Probe Array Experiment Systems

[0049]FIG. 1 is a simplified schematic diagram of illustrative systemsfor generating, sharing, and processing data derived from experimentsusing probe arrays (i.e., spotted arrays and/or synthesized arrays).More particularly, an illustrative arrayer system 148 and illustrativescanner systems 150A and 150B (collectively, scanner systems 150) areshown. Arrayer system 148 includes arrayer 120 that may be any type ofarrayer for depositing probes to create spotted arrays such as, forexample, the Affymetrix 417™ or 427™ Arrayers noted above. Furtherdetails of illustrative arrayers are provided in U.S. patent applicationSer. No. 09/682,076, hereby incorporated by reference in its entiretyfor all purposes. In the presently illustrated example, data may becommunicated among user computer 100A of system 148, user computers 100Band 100C of systems 150, and Laboratory Information Management (LIMS)server 120 over network 125. LIMS server 120 and associated softwaregenerally provides data capturing, tracking, and analysis functions froma centralized infrastructure. Aspects of a LIMS are described in U.S.Provisional Patent Application Nos. 60/220,587 and 60/273,231, both ofwhich are hereby incorporated by reference herein for all purposes. LIMSserver 120 and network 125 are optional, and the systems in otherimplementations may include a scanner for spotted arrays and notsynthesized arrays, or vice versa. Also, rather than employing separateuser computers 100A and 100B to operate and process data from an arrayerand scanner, respectively, as in the illustrated implementation, asingle computer may be used for all of these purposes in otherimplementations. More generally, a large variety of computer and/ornetwork architectures and designs may be employed, and it will beunderstood by those of ordinary skill in the relevant art that manycomponents of typical computer network systems are not shown in FIG. 1for sake of clarity.

User Computer 100A

[0050] As shown in FIG. 1 and noted above, arrayer 120 operates in theillustrated implementation under computer control, e.g., under thecontrol of user computer 100A. Although computer 100A is shown in FIG. 1for clarity as being directly coupled to arrayer 120, it mayalternatively be coupled to arrayer 120 over a local-area, wide-area, orother network, including an intranet and/or the Internet.

[0051]FIG. 2 is a functional block diagram showing an illustrativeimplementation of computer 100. Computer 100 may be a personal computer,a workstation, a server, or any other type of computing platform nowavailable or that may be developed in the future. Typically, computer100A includes known components such as processor (e.g., CPU) 205,operating system 210, system memory 220, memory storage devices 225,graphical user interface (GUI) controller 215, and input-outputcontrollers 230, all of which typically communicate in accordance withknown techniques such as via system bus 204. It will be understood bythose skilled in the relevant art that there are many possibleconfigurations of the components of computer 100A and that somecomponents that may typically be included in computer 100A are notshown, such as cache memory, a data backup unit, and many other devices.

[0052] Input-output controllers 230 could include any of a variety ofknown devices for accepting and processing information from a user,whether a human or a machine, whether local or remote. Such devicesinclude, for example, modem cards, network interface cards, sound cards,or other types of controllers for any of a variety of known inputdevices. Output controllers of input-output controllers 230 couldinclude controllers for any of a variety of known display devices forpresenting information to a user, whether a human or a machine, whetherlocal or remote. If one of these display devices provides visualinformation, this information typically may be logically and/orphysically organized as an array of picture elements, sometimes referredto as pixels. GUI controller 215 may comprise any of a variety of knownor future software programs for providing graphical input and outputinterfaces between computer 100A and a user 201 (e.g., an experimenterwishing to use arrayer 120 to generate spotted arrays), and forprocessing inputs from user 201 (hereafter sometimes referred to as userinputs or user selections).

Arrayer Manager Application 290

[0053] Arrayer manager application 290 of the illustrated implementationis a software application that controls functions of arrayer 120 andprocesses data supplied by user 201. As more particularly described withrespect to certain implementations in U.S. Provisional Pat. ApplicationSerial No. 60/288,403, incorporated by reference above, application 290,when executed in coordination with processor 205, operating system 210,and/or GUI controller 215, performs user interface functions, dataprocessing operations, and data transfer and storage operations. Forexample, with respect to user interface functions, user 201 may employone or more of GUI's 282 to specify and describe particular clones andtheir location in particular wells of particular well plates. Usinganother of GUI's 282, user 201 may specify how spots of the clones areto be arranged in arrays on one or more slides, as described in greaterdetail below with respect to fields 304 and 306 of array content file292 shown in FIG. 3A. Yet another of GUI's 282 may be used to operatearrayer 120, e.g., to initiate the spotting of a number of slideswithout further user participation.

[0054] As will be evident to those skilled in the relevant art,application 290 may be loaded into system memory 220 and/or memorystorage device 225 through an input device of devices 280.Alternatively, application 290 may be implemented as executableinstructions stored in firmware. Executable code corresponding toapplication 290 is referred to as arrayer manager application executable290′ and is shown for convenience with respect to the illustratedimplementation as stored in system memory 220. However, instructions anddata including executable instructions of application 290, and data usedor generated by it, may be located in or shifted among other memorydevices, local or remote, as convenient for data storage, dataretrieval, and/or execution.

[0055]FIG. 3A is a graphical representation of illustrative data recordsin one implementation of a data file generated by arrayer managerapplication executable 290′. The data file in this illustration,referred to as array content file 292, consists of records 301, each oneof which (i.e., records 301A through 301N for any number of N records)corresponds to one of N spots, i.e., probes, that have been deposited,or are planned to be deposited, on spotted arrays 121. For example, withreference to the graphical representation of spotted arrays 121 shown inFIG. 3B, two arrays 121A and 121B (collectively, arrays 121) have beenprinted on microscope slide substrate 333 by arrayer 120. Array 121Aincludes probe 370A. It is assumed for purposes of illustration thatdata relating to probe 370A is stored by executable 290′ in probe record301A. In this example, each of the records in file 292 includes thefollowing illustrative fields: probe identifier(s) 302, probex-coordinate identifier(s) 304, probe y-coordinate identifier(s) 306,probe data 308, probe data links 310, pin identifier 312, well plateidentifier 316, and user-supplied data 320.

[0056] The field in record 301A labeled probe identifier(s) 302A thus,in this example, includes certain information related to theidentification of probe 370A. For instance, field 302A may include aname for cDNA deposited by a pin of arrayer 120 in array 121A to produceprobe 370A. In various implementations, field 302A may also, or inaddition, include a nucleotide identifier and/or a gene symbol thatidentifies probe 370A. Also, field 302A may include a build or releasenumber of a database so that the data source used to develop the probecan be identified. As yet another example of information that may beincluded in field 302A, a probe may be identified as either an originalor as a replicate. For instance, for quality control or other reasons,probe 370B of array 121A may be the same probe as probe 370A, or anumber of such replicate probes may be deposited. The designation oforiginal or replicate number assists in comparing results from probesthat are based on the same sample. As one of ordinary skill in therelevant art will readily appreciate, all or some of this identifyingdata may be stored as a single value in field 302A (such as, forexample, concatenating name, nucleotide identifier, etc.), in separatefields (e.g., 302A′, 302A″, etc., not shown), in linked fields, and soon as may be convenient for data storage and/or processing. The otherfields described below similarly are only representative of manypossible storage and data retrieval architectures.

[0057] Field 308A, labeled probe data in this example, may includeprobe-related data such as the chromosome location of the gene or ESTrepresented by the probe, the band location on the chromosome, a SNP orother type of marker that can identify the location on the chromosome,and so on. Field 310A, labeled probe data links in this example,similarly may include an accession number from GenBank, a UniGenecluster number, and/or another identifier that facilitates access todata related to probe 370A that is stored in a database. This databasemay, but need not, be external to computer 100A and accessed via network125 and/or the Internet or other network. Systems for providing accessto such information are described, for example, in U.S. Provisional Pat.Application, Serial No. 60/288,429, hereby incorporated herein byreference in its entirety. Field 312A of this example identifies the pinon the print head(s) that is used to deposit probe 370A onto the slide.This information may be useful in comparing probes deposited with thesame pin to determine, for example, if the pin is defective. Fields 314Aand 316A contain information that respectively identifies the well plateand particular well from which biological fluid was taken to createprobe 370A. Field 320A may contain a variety of data supplied by user201 such as the user's name, the data of the experiment, and so on. Itwill be understood that there are many other types of data relating toprobe 370A that may be stored, and that numerous alternativearrangements may be implemented for storing them.

[0058] Fields 304A and 306A are used to identify the location of probe370A on the slide in x and y coordinates, respectively. It will beunderstood that other coordinate systems (e.g., radial system) could beused, and that the definition of the orientation and zero points of thecoordinate references of the present example are illustrative only. Inone implementation of the present example, field 304A could includeprimary and secondary row coordinates, and field 306A could includeprimary and secondary column coordinates, that identify the position ofprobe 370A. For instance, arrays 121A and 121B could be viewed asarranged in a single primary column (disposed horizontally in FIG. 3B)in which array 121A occupies the first primary row and array 121Boccupies the second primary row. Such an implementation may be said toinvolve relative, rather than absolute, locations because locations ofprobes are specified in relation to each other rather than in relationto a reference point on the substrate. It may be advantageous in someimplementations to specify absolute, rather than relative, locations. Inone such implementation, orthogonal x and y axes could be defmed inrelation to the sides of the microscope slide, such as x axis 392 and yaxis 394 of the illustrated example, with the 0,0 reference coordinatesdefined with reference to a particular point on the slide. For instance,some slides are manufactured with a frosted area, such as area 380 ofthis example, so that a user may more easily label or write on theslide, or for other reasons. A particular point at a comer of thefrosted area could readily be defined as the reference coordinate, orany of various other methods could be used to specify a referencecoordinate on, or spatially related to, a point on the substrate.

Scanner 160A: Optics and Detectors

[0059] Any of a variety of conventional techniques, or ones to bedeveloped in the future, may be used to generate probe-target pairs inprobe arrays that may be detected using a scanner. As one illustrativeexample that will be familiar to those of ordinary skill in the relevantart, conventional fluidics stations, hybridization chambers, and/orvarious manual techniques (as, for example, generally and collectivelyrepresented by hybridization process 122 in FIG. 1) may be used to applyone or more labeled targets to spotted arrays on microscope slides. In aparticular implementation, for instance, sample of a first target may belabeled with a first dye (an example of what may more generally bereferred to hereafter as an “emission label”) that fluoresces at aparticular characteristic frequency, or narrow band of frequencies, inresponse to an excitation source of a particular frequency. A secondtarget may be labeled with a second dye that fluoresces at a differentcharacteristic frequency. The excitation source for the second dye may,but need not, have a different excitation frequency than the source thatexcites the first dye, e.g., the excitation sources could be the same,or different, lasers. The target samples may be mixed and applied to theprobes of spotted arrays on microscope slides, and conditions may becreated conducive to hybridization reactions, all in accordance withknown techniques. In accordance with other techniques, such as typicallyare applied with respect to Affymetrix® GeneChip® synthesized arrays,samples of one labeled target are applied to one array and samples of asecond labeled target are applied to a second array having the sameprobes as the first array. Hybridization techniques are applied to botharrays. For example, synthesized arrays 134 of FIG. 1 may beillustratively assumed to be two GeneChip® synthesized arrays that havebeen subject to hybridization processes with respect to two differenttarget samples, each labeled with different fluorescent dyes. See, e.g.,U.S. Pat. No. 6,114,122, which is hereby incorporated by referenceherein in its entirety.

[0060] Many scanner designs may be used to provide excitation signals toexcite labels on targets or probes, and to detect the emission signalsfrom the excited labels. In references herein to illustrativeimplementations, the term “excitation beam” may be used to refer tolight beams generated by lasers to provide the excitation signal.However, excitation sources other than lasers may be used in alternativeimplementations. Thus, the term “excitation beam” is used broadlyherein. The term “emission beam” also is used broadly herein. As noted,a variety of conventional scanners detect fluorescent or other emissionsfrom labeled target molecules or other material associated withbiological probes. Other conventional scanners detect transmitted,reflected, refracted, or scattered radiation from such targets. Theseprocesses are sometimes generally and collectively referred to hereafterfor convenience simply as involving the detection of “emission beams.”The signals detected from the emission beams are generally referred tohereafter as “emission signals” or “emissions,” and these terms areintended to have a broad meaning commensurate with that intended hereinfor the term “emission beams.”

[0061] Various detection schemes are employed depending on the type ofemissions and other factors. A typical scheme employs optical and otherelements to provide an excitation beam, such as from a laser, and toselectively collect the emission beams. Also generally included arevarious light-detector systems employing photodiodes, charge-coupleddevices, photomultiplier tubes, or similar devices to register thecollected emission beams. For example, a scanning system for use with afluorescently labeled target is described in U.S. Pat. No. 5,143,854,hereby incorporated by reference in its entirety for all purposes. Otherscanners or scanning systems are described in U.S. Pat. Nos. 5,578,832,5,631,734, 5,834,758, 5,936,324, 5,981,956, 6,025,601, 6,141,096,6,185,030, 6,201,639, 6,218,803, and 6,252,236; in PCT ApplicationPCT/US99/06097 (published as WO 99/47964); in U.S. patent application,Ser. No. 09/681,819; and in U.S. Provisional Pat. Application Serial No.60/286,578, each of which also is hereby incorporated herein byreference in its entirety for all purposes.

[0062]FIG. 4 is a simplified graphical representation of selectedcomponents of an illustrative type of scanner 160A suitable for scanninghybridized spotted arrays 132A and 132B disposed on slide 333 (i.e., inthis example, spotted arrays 121A and 121B, respectively, afterhybridization process 122). These illustrative components, which will beunderstood to be non-limiting and not exhaustive, are referred tocollectively for convenience as scanner optics and detectors 400.Scanner optics and detectors 400 include excitation sources 420A and420B (collectively referred to as excitation sources 420). Any number ofone or more excitation sources 420 may be used in alternativeembodiments. In the present example, sources 420 are lasers; inparticular, source 420A is a diode laser producing red laser lighthaving a wavelength of 635 nanometers and, source 420B is a doubled YAGlaser producing green laser light having a wavelength of 532 nanometers.Further references herein to sources 420 generally will assume forillustrative purposes that they are lasers, but, as noted, other typesof sources, e.g., x-ray sources, may be used in other implementations.

[0063] Sources 120A and 120B may alternate in generating theirrespective excitation beams 435A and 435B between successive scans,groups of successive scans, or between full scans of an array.Alternatively, both of sources 120 may be operational at the same time.For clarity, excitation beams 435A and 435B are shown as distinct fromeach other in FIG. 4. However, in practice, turning mirror 424 and/orother optical elements (not shown) typically are adjusted to providethat these beams follow the same path.

[0064] Scanner optics and detectors 400 also includes excitation filters425A and 425B that optically filter beams from excitation sources 420Aand 420B, respectively. The filtered excitation beams from sources 420Aand 420B may be combined in accordance with any of a variety of knowntechniques. For example, one or more mirrors, such as turning mirror424, may be used to direct filtered beam from source 420A through beamcombiner 430. The filtered beam from source 420B is directed at an angleincident upon beam combiner 430 such that the beams combine inaccordance with optical properties techniques well known to those ofordinary skill in the relevant art. Most of combined excitation beams435 are reflected by dichroic mirror 436 and thence directed toperiscope mirror 438 of the illustrative example. However, dichroicmirror 436 has characteristics selected so that portions of beams 435Aand 435B, referred to respectively as partial excitation beams 437A and437B and collectively as beams 437, pass through it so that they may bedetected by excitation detector 410, thereby producing excitation signal494.

[0065] In the illustrated example, excitation beams 435 are directed viaperiscope mirror 438 and arm end turning mirror 442 to an objective lens445. As shown in FIGS. 5A and 5B, lens 445 in the illustratedimplementation is a small, light-weight lens located on the end of anarm that is driven by a galvanometer around an axis perpendicular to theplane represented by galvo rotation 449 shown in FIG. 4. Objective lens445 thus, in the present example, moves in arcs over hybridized spottedarrays 132 disposed on slide 333. Flourophores in hybridizedprobe-target pairs of arrays 132 that have been excited by beams 435emit emission beams 452 (beam 452A in response to excitation beam 435A,and beam 452B in response to excitation beam 435B) at characteristicwavelengths in accordance with well-known principles. Emission beams 452in the illustrated example follows the reverse path as described withrespect to excitation beams 435 until reaching dichroic mirror 436. Inaccordance with well-known techniques and principles, thecharacteristics of mirror 436 are selected so that beams 452 (orportions of them) pass through the mirror rather than being reflected.

[0066] In the illustrated implementation, filter wheel 460 is providedto filter out spectral components of emission beams 452 that are outsideof the emission band of the fluorophore, thereby providing filteredbeams 454. The emission band is determined by the characteristicemission frequencies of those fluorophores that are responsive to thefrequencies of excitation beams 435. In accordance with techniques wellknown to those of ordinary skill in the relevant arts, including that ofconfocal microscopy, filtered beams 454 may be focused by variousoptical elements such as lens 465 and also passed through illustrativepinhole 467 or other element to limit the depth of field, and thenceimpinges upon emission detector 415.

[0067] Emission detector 415 may be a silicon detector for providing anelectrical signal representative of detected light, or it may be aphotodiode, a charge-coupled device, a photomultiplier tube, or anyother detection device that is now available or that may be developed inthe future for providing a signal indicative of detected light. Forconvenience of illustration, detector 415 will hereafter be assumed tobe a photomultiplier tube (PMT). Detector 415 thus generates emissionsignal 492 that represents numbers of photons detected from filteredemission beam 454.

[0068]FIG. 5A is a perspective view of a simplified representation ofthe scanning arm portion of'scanner optics and detectors 400. Arm 500moves in arcs around axis 510, which is perpendicular to the plane ofgalvo rotation 449. A position transducer 515 is associated withgalvanometer 515 that, in the illustrated implementation, moves arm 500in bi-directional arcs. Transducer 515, in accordance with any of avariety of known techniques, provides an electrical signal indicative ofthe radial position of arm 500. Certain non-limiting implementations ofposition transducers for galvanometer-driven scanners are described inU.S. Pat. No. 6,218,803, which is hereby incorporated by reference inits entirety for all purposes. The signal from transducer 515 isprovided in the illustrated implementation to user computer 100B so thatclock pulses may be provided for digital sampling of emission signal 492when arm 500 is in certain positions along its scanning arc.

[0069] Ann 500 is shown in alternative positions 500′ and 500″ as itmoves back and forth in scanning arcs about axis 510. Excitation beams435 pass through objective lens 445 on the end of arm 500 and excitefluorophore labels on targets hybridized to certain of probes 370 inarrays 132 disposed on slide 333, as described above. The arcuate pathof excitation beams 435 is schematically shown for illustrative purposesas path 550. Emission beams 452 pass up through objective lens 445 asnoted above. Slide 333 of this example is disposed on translation stage542 that is moved in what is referred to herein as the “y” direction 544so that arcuate path 550 repeatedly crosses the plane of arrays 132.

[0070]FIG. 5B is a top planar view of arm 500 with objective lens 445scanning arrays 132 as translation stage 542 is moved under path 550. Asshown in FIG. 5B, arcuate path 550 of this example is such that arm 500has a radial displacement of θ in each direction from an axis parallelto direction 544. What is referred to herein as the “x” direction,perpendicular to y-direction 544, is shown in FIG. 5B as direction 543.Further details of confocal, galvanometer-driven, arcuate, laserscanning instruments suitable for detecting fluorescent emissions areprovided in PCT Application PCT/US99/06097 (published as WO99/47964) andin U.S. Pat. Nos. 6,185,030 and 6,201,639, all of which have beenincorporated by reference above. It will be understood that although agalvanometer-driven, arcuate, scanner is described in this illustrativeimplementation, many other designs are possible, such as thevoicecoil-driven scanner described in U.S. patent application, Ser. No.09/383,986, hereby incorporated herein by reference in its entirety forall purposes.

[0071]FIG. 6A is a simplified graphical representation of illustrativeprobe 370A as it is scanned by scanner 160A. It is assumed forillustrative purposes that probe 370A has hybridized with afluorescently labeled target. Although FIG. 6A shows probe 370A inidealized form, i.e. a perfect circle, it will be understood that manyshapes, including irregular shapes, are possible.

[0072] In the manner described above, objective lens 445 scans overprobe 370A (and other probes of arrays 132) in bidirectional arcs. Anillustrative scan 620 is shown in FIG. 6A, which is not necessarilydrawn to scale; e.g., the ratio of the radius of the arc of scan 620 tothe radius of probe 370A is illustrative only. As also noted, probe 370Amoves under objective lens 445 carried by translation stage 542 iny-direction 544. In particular, in the illustrated implementation, arm500 scans in an arc in one direction, shown as left-to-right scan 620 inFIG. 6A. Translation stage 542 is then moved incrementally by a steppingmotor (not shown) in y-direction 544 and arm 500 then scans back in theopposite direction, shown as right-to-left arcuate scan 622. Translationstage 542 is again moved in direction 544, and so on inscan-step-scan-step sequences. The distance between scans 620 and 622thus corresponds to the distance that translation stage 542 is moved ineach increment, although it will be understood that the distance shownin FIG. 6A is not necessarily to scale and is illustrative only. It willbe understood that any other combination of scanning and stepping ispossible in alternative implementations, and that scanning and moving oftranslation stage 542 may occur at the same or at overlapping times insome implementations. Translation stage 542 need not be stepped in someimplementations, but may, for example, be moved continuously.

[0073]FIG. 6B is a plot having a pixel clock axis 630 showing when clockpulses 632 occur. Clock pulses 632 may be generated by a pixel clock ofscanner 160A (e.g., complex programmable logic device 830, describedbelow) or, alternatively, they may be generated by software executing incomputer 100B(e.g., executable 790′, described below). Axis 630 in theillustrated implementation is a spatial axis; that is, each of clockpulses 632 occurs in reference to the radial location of arm 500 duringeach scan, as described in greater detail below. Thus, with reference tothe position of translation stage 542 indicated by scan 620, a clockpulse 632A occurs prior to arm 500 passing over probe 370A from the leftas shown in FIGS. 6A and 6B. (For sake of clarity of illustration only,vertical dotted lines are provided between FIGS. 6A and 6B, and betweenFIGS. 6B and 6C, to illustrate the alignment of these figures.) Asanother example, clock pulse 632C occurs with respect to scan 620 whenarm 500 has just passed over portions of probe 370A indicated by pixelareas 610A and 610B. These areas are referred to as pixel areas becausea digital value is assigned to each such area in the illustratedimplementation based on the strength of a processed emission signalassociated with that area. In accordance with known techniques, clockpulses 632 enable the digital sampling of the processed emission signal.

[0074] As noted, clock pulses 632 are spatially rather than temporallydetermined in the illustrated implementation. Moreover, in some aspectsof the illustrated implementation, galvanometer 516 is driven by acontrol signal provided by user computer 100B such that the velocity ofarm 500 in x-direction 444 is constant in time during those times whenarm 500 is over probe 370A (and, typically, over other of probes 370 ofarrays 132 as they are scanned). That is, dx/dt is a constant (and thusthe angular velocity varies) over the probe-scanning portions of eacharc and, in particular, it is a constant during the times when clockpulses are generated to enable digital sampling. As is evident, dx/dtmust be reduced to zero between each successive scan, but thisdeceleration and reversal of direction takes place after arm 500 haspassed over probe 370A (or, more generally, array 132A or 132B). Thedesign and implementation of a galvanometer control signal to provideconstant dx/dt are readily accomplished by those of ordinary skill inthe relevant art.

[0075] Thus, the approximate sampling rate may readily be calculatedbased on the desired scanning speed (dx/dt) and desired pixelresolution. To provide an illustrative example, a spot deposited by anAffymetrix® 417™ or 427™ Arrayer typically has a diameter ofapproximately 150 to 200 microns. Spotted arrays made using theseinstruments typically may be deposited over a surface having a width ofabout 22 millimeters on a microscope slide that is 25 millimeters wide.In order to achieve pixel resolution of about 10 microns, a samplingrate of about 160 kHz is sufficient for scanning speeds typical forscanners used with respect to these probe arrays, such as theAffymetrix® 428™ scanner. Other sampling rates, readily determined bythose of ordinary skill, may be used in other applications in which, forexample, different scanning speeds are used and/or different pixelresolutions are desired. The desired pixel resolution typically is afunction of the size of the probe features, the possibility of variationin detected fluorescence within a probe feature, and other factors.

[0076]FIG. 6C shows digital values representative of emission signal 492as sampled at (and/or collected for an adjoining period before) pointson scans 620 and 622 represented by constant radial position lines625A-K (collectively referred to as radial position lines 625). Thevoltages sampled during scan 620 are shown as dots, while the voltagessampled during scan 622 are shown as x's. The determination of when toinitiate pixel clock signals may be made using position transducer 515,as described in greater detail in U.S. Provisional Patent ApplicationSerial No. 60/286,578, incorporated by reference above. Thus, forexample, voltage 650C of FIG. 6C is representative of emission signal492 based on sampling enabled by a pixel clock pulse at point 632C onaxis 630 that is triggered when arm 500 is at radial position 625Cduring scan 620. After translation stage 542 has been incremented,voltage 652C is sampled during scan 622 at the same radial position,shown as radial position 625C″.

User Computer 100B

[0077] As shown in FIG. 1 and noted above, scanner 160B operates in theillustrated implementation under computer control, e.g., under thecontrol of user computer 100B, as shown in greater detail in FIG. 7.Although computer 100B is shown in FIGS. 1 and 7 for clarity as beingdirectly coupled to scanner 160A, it may alternatively be coupled toscanner 160A over a local-area, wide-area, or other network, includingan intranet and/or the Internet. Computer 100B may be a personalcomputer, a workstation, a server, or any other type of computingplatform now available or that may be developed in the future.Typically, computer 100B includes known components such as processor(e.g., CPU) 705, operating system 710, system memory 720, memory storagedevices 725, GUI controller 715, and input-output controllers 730, allof which typically communicate in accordance with known techniques suchas via system bus 704. It will be understood by those skilled in therelevant art that there are many possible configurations of thecomponents of computer 100B and that some components that may typicallybe included in computer 100B are not shown, such as cache memory, a databackup unit, and many other devices.

[0078] Input-output controllers 730 could include any of a variety ofknown devices for accepting and processing information from a user,whether a human or a machine, whether local or remote. Such devicesinclude, for example, modem cards, network interface cards, sound cards,or other types of controllers for any of a variety of known inputdevices. Output controllers of input-output controllers 730 couldinclude controllers for any of a variety of known display devices forpresenting information to a user, whether a human or a machine, whetherlocal or remote. If one of these display devices provides visualinformation, this information typically may be logically and/orphysically organized as an array of picture elements, sometimes referredto as pixels. Graphical user interface (GUI) controller 715 may compriseany of a variety of known or future software programs for providinggraphical input and output interfaces between computer 100B and a user701 (e.g., an experimenter wishing to use scanner 160A to acquire andanalyze information from spotted arrays), and for processing inputs fromuser 701 (hereafter sometimes referred to as user inputs or userselections). To avoid confusion, references hereafter to a “GUI”generally are directed to one or more graphical user interfacesdisplayed on a display device of devices 780 to user 701, such as GUI782A of FIGS. 8 and 9, described below. To be distinguished arereferences to a “GUI controller,” such as GUI controller 715, thatoperates to display the GUI's to user 701 and to process inputinformation provided by user 701 through the GUI's. As is well known inthe relevant art, a user may provide input information using a GUI byselecting, pointing, typing, speaking, and/or otherwise operating, orproviding information into, one or more input devices of devices 780 ina known manner.

[0079] Computer 100B may optionally include process controller 740 thatmay, for example, be any of a variety of PC-based digital signalprocessing (DSP) controller boards, such as the M44 DSP Board made byInnovative Integration of Simi Valley, Calif. More generally, controller740 may be implemented in software, hardware or firmware, or anycombination thereof.

Scanner Control and Analysis Application 790

[0080] Scanner control application 790 of the illustrated implementationis a software application that controls functions of scanner 160A. Inaddition, when executed in coordination with processor 705, operatingsystem 710, GUI controller 715, and/or process controller 740,application 790 performs user interface functions, data and imageprocessing operations, and data transfer and storage operations relatedto data provided by or to scanner 160A and/or user 701, as described ingreater detail below. Affymetrix® Jaguar™ software, available fromAffymetrix, Inc., is a commercial product that, in some implementations,includes various aspects of application 790.

[0081] As more particularly shown in FIG. 8, scanner control application790 in the illustrated implementation includes a GUI manager 810 that,in accordance with known techniques, receives and processes userselections of windows for display and user selections of features withinone or more of the displayed windows. GUI manager 810 also builds anddisplays, in accordance with known techniques, the windows, features,and selections according to templates and other stored data as well asuser data 794, array data 792, image data 798, and image analysis data799. Also included in application 790 is image processor 820 thatreceives image data 798 from scanner 160A. In particular, in theillustrative implementation image analyzer 852 of processor 820 receivesdata 798 and analyzes it to provide image analysis data 799. Data 799 isstored by storer 855 in system memory 720 and also provided to GUImanager 810 for inclusion in GUI 782A. Similarly, image data 798 may beprovided to GUI manager 810 for inclusion in GUI 782A.

[0082] For convenience of further description, it is illustrativelyassumed that user 701 indicates that three openable windows are to bedisplayed, as represented by illustrative GUI 782A of FIG. 8 and shownin greater detail in FIG. 9. It will be understood that GUI 782A of FIG.9 is illustrative only, and that numerous variations, alternative,and/or rearrangements of the information and features described hereinwith respect to GUI 782A may be provided in other implementations.

[0083] It will be illustratively assumed that user 701 selects threeopenable windows to be displayed in GUI 782A. This selection may beaccomplished in accordance with a variety of known techniques, such asby selecting the windows from a pull down menu, e.g., from “View” menu960 of FIG. 9. As shown in FIG. 9, GUI 782A of this example thusincludes first window 905 that includes a plurality of image features,referred to for convenience as spots 951, such as spots 951A-D. Spots951 of this implementation may be considered to be pseudo-images ofprobes in one or more spotted arrays. Thus, for example, a visualcharacteristic of image feature 951A represents a hybridization reactionassociated with a probe of a spotted array arranged in the upper leftquadrant of first window 905. Spots 951B and 951C are associated withanother spotted array, the pseudo-image of which is arranged in theupper right quadrant. Similarly, spot 951D is associated with a thirdspotted array, the pseudo-image of which is arranged in the lower rightquadrant of first window 905. In this example, the visual characteristicmay be the gray-scale intensity of spots 951. Many of spots 951 appearof equal intensity in this example, but it will be understood that thisis a simplification for convenience of illustration only. In general,the intensity or other visual or other characteristic of spots 951 mayvary to represent a degree, efficiency, or intensity of hybridization ofa probe-target pair.

[0084] It is also illustratively assumed with respect to GUI 782A ofFIG. 9 that user 701 has selected to display, i.e., open, secondopenable window 907 that, in this illustrative implementation, is ascatter plot or graph. Window 907 includes a plurality of data features952, such as represented in this example by dots 952 including dots952A-D. The placement of each of dots 952 in relation to horizontal axis956 and vertical axis 957 of the scatter plot indicates, in thisexample, the intensity of hybridization of a probe in relation toemissions from a first dye attached, for example, to a first target andemissions from a second dye attached to a second target. For instance,the placement of dot 952A in relation to axis 956 indicates theintensity of an emission signal due to the probe associated with dot952A hybridizing to a first target labeled with the first dye, and theplacement of dot 952A in relation to axis 957 indicates the intensity ofan emission signal due to the same probe hybridizing to a second targetlabeled with the second dye. In this implementation, the intensities ofthe emission signals, and thus the plot of window 907, are provided inlog scale. However, other scales, such as linear scale, may be employedin other implementations.

[0085] In the illustrative implementation, second window 907 isdisplayed by overlaying it on top of first window 905. However, inalternative implementations, the windows may be displayed withoutoverlapping or overlaying, in accordance with known techniques. Also inaccordance with known techniques, any of the windows may be resized,moved, or rearranged by user 701.

[0086] It is further assumed that user 701 has selected to display thirdwindow 906 that, in this implementation, is a spreadsheet. Thespreadsheet includes a plurality of descriptive features, i.e., rows inthis example. Thus, for instance, row 953A is shown that providesinformation about a probe in the scanned probe array. The descriptiveelements in this row, each arranged in a separate column, include, forexample, a “Row” element having a value “1” and a “Col” element having avalue “8.”

[0087] It is assumed for illustrative purposes that user 701 selects row953A. GUI manager 810 causes row 953A to be highlighted in accordancewith known techniques. GUI manager 810 has populated row 953A (and theother displayed rows of the spreadsheet) with information available tomanager 810 from array data 792, user data 794, image data 798 and/orimage analysis data 799. For example, in the illustrated example, thevalues “1” in the “Row” column and “8” in the “Col” column indicate thatthe probe associated with row 953A is located in the first row andeighth column of the probe array. Other of array data 792, e.g., primaryrows and columns as described above, may be provided in alternativeexamples to indicate which of the arrays shown in window 905 constitutethe array in which the probe corresponding to row 953A is located. Asadditional examples, the value of the descriptive element of row 953Aarranged under the column labeled “Cy3 Signal” indicates an intensity ofthe emission signal from the dye Cy3 detected by scanner 160A byscanning the probe associated with row 953A.

[0088] In accordance with some implementations of the present invention,GUI manager 810 automatically highlights the features of window 905 andwindow 907 corresponding to the user-selected and highlighted feature ofwindow 906. Thus, as shown in GUI 782A of FIG. 9, GUI manager 810 causesspot 951A of window 905 to be highlighted (i.e., in this example a whitecircle highlights the spot's boundaries) and causes dot 952A of window907 to be highlighted (i.e., a circle is drawn around it in thisexample). In addition, in this implementation textual element 955 isprovided at the bottom of window 907 that shows intensity informationrelated to the highlighted dot 952A. The preceding illustrativedescription could also have assumed that user 701 selected spot 951A,thus causing GUI manager 810 to highlight row 953A and dot 952A, or thatuser 701 selected dot 952A, causing GUI manager 810 to highlight row953A and spot 951A. In any of these cases, dot 952A, textual element955, spot 951A, and row 953A all provide user 701 with easily accessibleand correlated information regarding a common probe. Advantageously,this information may be displayed to user 701 in simultaneouslydisplayed windows on GUI 782A. In other examples, user 701 may haveselected any two of the three illustrative windows described above.

[0089] Additional embodiments are described in the copending PCTApplication PCT/IUS01/______ entitled “System Method and SoftwareProduct for Controlling Biological Microarray Scanner” filed on Aug. 22,2001, which is incorporated by reference as if fully provided herein.

[0090] Having described various embodiments and implementations of thepresent invention, it should be apparent to those skilled in therelevant art that the foregoing is illustrative only and not limiting,having been presented by way of example only. Many other schemes fordistributing functions among the various functional elements of theillustrated embodiment are possible in accordance with the presentinvention. The functions of any element may be carried out in variousways in alternative embodiments. Also, the functions of several elementsmay, in alternative embodiments, be carried out by fewer, or a single,element.

[0091] For example, arrayer manager application 290 is described asexecuting on computer 100A that controls arrayer 120, and scannercontrol application 390 is described as executing on computer 100B thatcontrol scanner 160A. However, aspects of the invention need not bedivided into these distinct functional elements. Rather, for example,applications 290 and 390 could be executed on a same computer that may,for example, control both arrayer 120 and scanner 160A. Moreover,applications 290 and 390 may be part of a same computer program productirrespective of whether they are executed on a same, or different,computers.

[0092] In addition, it will be understood by those skilled in therelevant art that control and data flows between and among functionalelements of the invention and various data structures may vary in manyways from the control and data flows described above. More particularly,intermediary functional elements (not shown) may direct control or dataflows, and the functions of various elements may be combined, divided,or otherwise rearranged to allow parallel processing or for otherreasons. Also, intermediate data structures or files may be used,various described data structures or files may be combined, thesequencing of functions or portions of functions generally may bealtered, and so on. Numerous other embodiments, and modificationsthereof, are contemplated as falling within the scope of the presentinvention as defined by appended claims and equivalents thereto.

Copyright Statement

[0093] A portion of the disclosure of this patent document containsmaterial that is subject to copyright protection. The copyright ownerhas no objection to the facsimile reproduction by anyone of the patentdocument or the patent disclosure as it appears in any Patent Officepatent file or records, but otherwise reserves all copyright rightswhatsoever.

What is claimed is:
 1. A user interface, comprising: a first openablewindow having a plurality of first image features, each having one ormore characteristics representing one or more hybridization reactionsassociated with a probe of a probe array; a second openable windowhaving a plurality of data features, each relating to one or morequantifications of one or more hybridization reactions associated with aprobe of the probe array; and a third openable window having a pluralityof descriptive features, each including one or more descriptive elementsassociated with a probe of the probe array.
 2. The user interface ofclaim 1, wherein the probe array comprises a spotted array.
 3. The userinterface of claim 1, wherein the probe array comprises a synthesizedarray.
 4. The user interface of claim 1, wherein the first, second, andthird openable windows are all open in the interface at a same time. 5.The user interface of claim 1, further comprising: a fourth openablewindow having a plurality of second image features, each having one ormore characteristics representing one or more hybridization reactionsassociated with a probe of the probe array.
 6. The user interface ofclaim 5, wherein the first image features are generated based onemissions of a first wavelength and the second image features aregenerated based on emissions of a second wavelength different from thefirst wavelength.
 7. The user interface of claim 1, wherein the one ormore characteristics of the plurality of first image features include achromatic value representing degree, efficiency, or intensity ofhybridization.
 8. The user interface of claim 7, wherein the chromaticvalue is a hue, brightness, lightness, or saturation value.
 9. The userinterface of claim 1, wherein the one or more characteristics of theplurality of first image features include an intensity valuerepresenting degree, efficiency, or intensity of hybridization.
 10. Theuser interface of claim 9, wherein the intensity value includes agray-scale value.
 11. The user interface of claim 1, wherein: theplurality of first image features comprises a pseudo-image of the array.12. The user interface of claim 1, wherein the plurality of datafeatures each represent a quantification of degree, efficiency, orintensity of hybridization of a probe based on the probe hybridizingwith none, one or a plurality of targets.
 13. The user interface ofclaim 12, wherein the second openable window comprises a two-dimensionalscatter plot wherein the plurality of data features comprises marks onthe scanner plot, each representing a quantification of degree,efficiency, or intensity of hybridization of a probe with first andsecond targets.
 14. The user interface of claim 12, wherein the secondopenable window comprises a histogram wherein the plurality of datafeatures comprises bars, each representing a quantification of a numberof probes having in common a range of degree, efficiency, or intensityof hybridization with one or more targets.
 15. The user interface ofclaim 12, wherein the second openable window comprises a graphicalrepresentation selected from the group consisting of a scatter plot,histogram, bar graph, or line graph.
 16. The user interface of claim 1,wherein the plurality of descriptive features comprises rows of aspreadsheet wherein each row includes one or more descriptive elementsassociated with a probe.
 17. The user interface of claim 1, wherein thedescriptive elements comprise any one or more of the group of elementsconsisting of absolute image intensity value, relative image intensityvalue, user-supplied data related to the probe, biological informationrelated to the probe; probe identifier, probe x-coordinate identifier,probe y-coordinate identifier, probe-related data, probe data links, pinidentifier, well plate identifier.
 18. The user interface of claim 17,wherein the probe data links include links to remotely or locally storeduser-supplied data related to the probe or links to remotely or locallystored biological information related to the probe.
 19. The userinterface of claim 17, wherein the probe-related data include any one ormore datum selected from the group consisting of chromosome location ofa gene or EST represented by the probe, band location on the chromosome,or SNP or other marker identifying the location on the chromosome. 20.The user interface of claim 1, wherein when a user selects a first imagefeature associated with a first probe, a data feature or a descriptivefeature associated with the first probe, or both, are highlighted. 21.The user interface of claim 1, wherein when a user selects a datafeature associated with a first probe, a first image feature or adescriptive feature associated with the first probe, or both, arehighlighted.
 22. The user interface of claim 1, wherein: when a userselects a descriptive feature associated with a first probe, a firstimage feature or a data feature associated with the first probe, orboth, are highlighted.
 23. A user interface, comprising: two or morewindows selected from the group consisting of a first window having aplurality of image features, each having one or more characteristicsrepresenting one or more hybridization reactions associated with a probeof a probe array; a second window having a plurality of data features,each relating to one or more quantifications of one or morehybridization reactions associated with a probe of the probe array; anda third window having a plurality of descriptive features, eachincluding one or more descriptive elements associated with a probe ofthe probe array; wherein, when a user selects a feature from any of thetwo or more windows, a corresponding feature in at least one other ofthe two or more windows is highlighted.
 24. A computer program productcomprising: (a) an image processor constructed and arranged to processimage data based on scanning a probe array; and (b) a GUI managerconstructed and arranged to provide two or more windows selected fromthe group consisting of (i) a first window having a plurality of imagefeatures based on the processed image data, each having one or morecharacteristics representing one or more hybridization reactionsassociated with a probe of the probe array, (ii) a second window havinga plurality of data features, each relating to one or morequantifications of one or more hybridization reactions associated with aprobe of the probe array, and (iii) a third window having a plurality ofdescriptive features, each including one or more descriptive elementsassociated with a probe of the probe array.
 25. The computer programproduct of claim 24, wherein: when a user selects a feature from any ofthe two or more windows, the GUI manager further is constructed andarranged to cause a corresponding feature in at least one other of thetwo or more windows to be highlighted.
 26. The computer program productof claim 24, wherein the probe array is a spotted array.
 27. Thecomputer program product of claim 24, wherein the probe array is asynthesized array.
 28. A computer program product comprising: a GUImanager constructed and arranged to provide two or more windows selectedfrom the group consisting of (i) a first window having a plurality ofimage features, each having one or more characteristics representing oneor more hybridization reactions associated with a probe of a probearray, (ii) a second window having a plurality of data features, eachrelating to one or more quantifications of one or more hybridizationreactions associated with a probe of the probe array, and (iii) a thirdwindow having a plurality of descriptive features, each including one ormore descriptive elements associated with a probe of the probe array.29. A method comprising the steps of: (a) providing image data based onscanning a probe array; and (b) providing in a graphical user interfacetwo or more windows selected from the group consisting of (i) a firstwindow having a plurality of image features based on the image data,each having one or more characteristics representing one or morehybridization reactions associated with a probe of a probe array, (ii) asecond window having a plurality of data features, each relating to oneor more quantifications of one or more hybridization reactionsassociated with a probe of the probe array, and (iii) a third windowhaving a plurality of descriptive features, each including one or moredescriptive elements associated with a probe of the probe array.
 30. Themethod of claim 29, further comprising the steps of: (c) receiving auser selection of a feature from any of the two or more windows; and (d)causing a corresponding feature in at least one other of the two or morewindows to be highlighted.
 31. A scanning system, comprising: (a) ascanner constructed and arranged to scan a probe array to generate imagedata; (b) an image processor constructed and arranged to process theimage data; and (c) a GUI manager constructed and arranged to providetwo or more windows selected from the group consisting of (i) a firstwindow having a plurality of image features based on the processed imagedata, each having one or more characteristics representing one or morehybridization reactions associated with a probe of the probe array, (ii)a second window having a plurality of data features, each relating toone or more quantifications of one or more hybridization reactionsassociated with a probe of the probe array, and (iii) a third windowhaving a plurality of descriptive features, each including one or moredescriptive elements associated with a probe of the probe array.
 32. Ascanning system, comprising: a scanner constructed and arranged to scana probe array to generate image data; a computer; and a computer programproduct that, when executed on the computer, performs a methodcomprising the steps of: (a) processing the image data, and (b)providing in a graphical user interface two or more windows selectedfrom the group consisting of (i) a first window having a plurality ofimage features based on the processed image data, each having one ormore characteristics representing one or more hybridization reactionsassociated with a probe of a probe array, (ii) a second window having aplurality of data features, each relating to one or more quantificationsof one or more hybridization reactions associated with a probe of theprobe array, and (iii) a third window having a plurality of descriptivefeatures, each including one or more descriptive elements associatedwith a probe of the probe array.
 33. The method of claim 32, wherein:the method performed by the computer program product further includesthe steps of (c) receiving a user selection of a feature from any of thetwo or more windows, and (d) causing a corresponding feature in at leastone other of the two or more windows to be highlighted.
 34. A computersystem for providing a user interface with a scanner for scanning aprobe array to generate image data, comprising: a first window means forproviding image feature means having one or more characteristicsrepresenting one or more hybridization reactions associated with probemeans of the probe array; a second window means for providing a datafeature means related to one or more quantification means of one or morehybridization reactions associated with probe means of the probe array;and a third window means for providing descriptive feature meansincluding one or more descriptive elements associated with probe meansof the probe array.
 35. A computer system for providing a user interfacewith a scanner for scanning a probe array, the system being programmedto display image features having one or more characteristicsrepresenting one or more hybridization reactions associated with a probeof the probe array, data features related to one or more quantificationsof one or more hybridization reactions associated with a probe of theprobe array, and descriptive features including one or more descriptiveelements associated with a probe of the probe array.
 36. A computerprogram product comprising a GUI manager constructed and arranged toprovide display regions for displaying image features representinghybridization associated with a probe of a probe array, data featuresrelated to quantifying the hybridization associated with a probe of theprobe array, and descriptive features associated with a probe of theprobe array.
 37. A computer program product comprising a GUI managermeans for providing window means for displaying image feature meansrepresenting hybridization means associated with a probe means of aprobe array, data feature means related to quantifying hybridizationmeans associated with probe means of the probe array, and descriptivefeature means associated with probe means of the probe array.